*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  position: relative;
  font-weight: normal;
}

html,
body {
  width: 100%;
  height: 100vh;
  margin: 0;
  padding: 0;
  color: var(--color-text-1);
  font-size: 14px;
  background-color: var(--color-bg-1);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

#app {
  width: 100%;
  height: 100%;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

.flexColumn {
  display: flex !important;
  flex-direction: column;
}

.flexRow {
  display: flex !important;
  flex-direction: row;
}

.align-center {
  align-items: center;
}

.spaceEnd {
  justify-content: flex-end;
}

.spaceCenter {
  justify-content: center;
}

.spaceStart {
  justify-content: flex-start;
}

.spaceAround {
  justify-content: space-around;
}

.spaceBetween {
  justify-content: space-between;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.float-left {
  float: left;
  overflow: hidden;
}

.float-right {
  float: right;
  overflow: hidden;
}

.m0 {
  margin: 0;
}

.mb-0,
.mb0 {
  margin-bottom: 0;
}

.mb-5,
.mb5 {
  margin-bottom: 5px;
}

.mb-10,
.mb10 {
  margin-bottom: 10px;
}

.mb-20,
.mb20 {
  margin-bottom: 20px;
}

.mr-0,
.mr0 {
  margin-right: 0;
}

.mr-5,
.mr5 {
  margin-right: 5px;
}

.mr-10,
.mr10 {
  margin-right: 10px;
}

.mr-20,
.mr20 {
  margin-right: 20px;
}

.ml-0,
.ml0 {
  margin-left: 0 !important;
}

.ml-5,
.ml5 {
  margin-left: 5px;
}

.ml-10,
.ml10 {
  margin-left: 10px;
}

.ml-20,
.ml20 {
  margin-left: 20px;
}

.mt-5,
.mt5 {
  margin-top: 5px;
}

.-mt5 {
  margin-top: -5px;
}

.mt-10,
.mt10 {
  margin-top: 10px;
}

.mt-20,
.mt20 {
  margin-top: 20px;
}

.width_full {
  width: 100% !important;
}

.cursor {
  cursor: pointer;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

.text-overflow {
  width: 100%;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}



/* fade */
.fade-enter-active,
.fade-leave-active {
  transition: opacity 0.28s;
}

.fade-enter,
.fade-leave-active {
  opacity: 0;
}

/* fade-transform */
.fade-transform-leave-active,
.fade-transform-enter-active {
  transition: all .3s;
}

.fade-transform-enter {
  opacity: 0;
  transform: translateY(-30px);
}

.fade-transform-leave-to {
  opacity: 0;
  transform: translateY(30px);
}

/* breadcrumb transition */
.breadcrumb-enter-active,
.breadcrumb-leave-active {
  transition: all .5s;
}

.breadcrumb-enter,
.breadcrumb-leave-active {
  opacity: 0;
  transform: translateX(20px);
}

.breadcrumb-move {
  transition: all .5s;
}

.breadcrumb-leave-active {
  position: absolute;
}


::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: var(color-fill-1);
  border-radius: 2px;
}

::-webkit-scrollbar-thumb {
  background: var(--color-neutral-4);
  transition: all .5s;
  border-radius: 80px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--color-neutral-6);
}

::-webkit-scrollbar-corner {
  background: var(--color-neutral-6);
}